/*
 * CuerpoCangrejo.cpp
 *
 *  Created on: 01/10/2013
 *      Author: ezequiel
 */

#include "CuerpoCangrejo.h"

CuerpoCangrejo::CuerpoCangrejo(const float radius) {
	this->formaCuerpo = new Esfera(radius);
	this->f1 = new FormaHoyos();
	this->f2 = new FormaHoyos();

}

CuerpoCangrejo::~CuerpoCangrejo() {
	this->formaCuerpo->~Esfera();//TODO eliminar esfera a la mierda
}

void CuerpoCangrejo::render(GLuint handle, glm::mat4* matModelo) {

	glm::mat4 modelo1 = *matModelo;
	glm::mat4 modelo2 = *matModelo;
	modelo1 = glm::rotate(modelo1, 90.0f,glm::vec3(1.0f,0,0));
    modelo1 = glm::scale(modelo1, glm::vec3(0.25,0.25,1.0));
    f1->render(handle,&modelo1);
	modelo2 = glm::rotate(modelo2, -90.0f,glm::vec3(1.0f,0,0));
    modelo2 = glm::scale(modelo2, glm::vec3(0.25,-0.25,1.0));
    f2->render(handle,&modelo2);

//	glm::mat4 matrizCuerpo = *matModelo;
//	matrizCuerpo = glm::scale(matrizCuerpo, glm::vec3 (1.0f, 1.0f, 0.75f));
//	this->formaCuerpo->render(handle, &matrizCuerpo);
}

void CuerpoCangrejo::render(GLuint handle) {
}

void CuerpoCangrejo::setCamara(Camara* camara) {
	this->formaCuerpo->setCamara(camara);
}

void CuerpoCangrejo::setFixtureId(int id) {
	this->f1->setTextureid(id);
	this->f2->setTextureid(id);
}

void CuerpoCangrejo::setCam(Camara* cam, glm::mat4 pr) {
	this->f1->setCam(cam, pr);
	this->f2->setCam(cam, pr);
}

void CuerpoCangrejo::setFixtureNormalId(int id) {
	this->f1->setTextureNormalId(id);
	this->f2->setTextureNormalId(id);
}
